Systems and methods for virtual co-location

ABSTRACT

Systems and methods for facilitating collaboration between a local user or team in a meeting space and one or more remote users outside the meeting space are provided. The virtual co-location system may include, for example, an IOT device including sensors, a microphone, a beacon light, a speaker, a user control interface (e.g., including a control input adjusted by the local user, the user control interface producing an electronic control signal representing a setting of a control device), and/or a local microprocessor for executing local collaboration software. The virtual co-location systems and methods may also or alternatively include a remote computer having a remote microprocessor for executing remote collaboration software.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims benefit and priority under 35 U.S.C. § 120 to,and is a Continuation of, U.S. patent application Ser. No. 15/860,747filed on Jan. 3, 2018 and titled “SYSTEMS AND METHODS FOR VIRTUALCO-LOCATION”, which issued as U.S. Pat. No. ______ on ______, and whichitself claims benefit and priority to U.S. patent application Ser. No.15/660,012 filed on Jul. 26, 2017 and titled “SYSTEMS AND METHODS FORVIRTUAL CO-LOCATION”, which issued as U.S. Pat. No. 9,900,556 on Feb.20, 2018, and which itself claims benefit and priority under 35 U.S.C. §119(e) to U.S. Provisional Application No. 62/525,741, filed on Jun. 28,2017 and titled “SYSTEMS AND METHODS FOR VIRTUAL CO-LOCATION”, eachprevious application being hereby incorporated by reference herein inits entirety.

COPYRIGHT NOTICE

A portion of the disclosure of this patent document contains materialwhich is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor the patent disclosure, as it appears in the Patent and TrademarkOffice patent file or records, but otherwise reserves all copyrightrights whatsoever.

BACKGROUND

The present disclosure relates generally to systems and methods forproviding virtual co-location and, more specifically, to systems andmethods for virtual co-location for facilitating collaboration between alocal user in a room and a remote user outside the room, including forexample, an Internet Of Things (IOT) device and a remote computer.

It is often the case that the best collaboration among teams occurs whenall team members are in the same “pod” or room at the same time.However, in today's workplace environment, it is not unusual to havesome people working remotely at any given time. Working remotelyincludes working from any location other than a shared space conduciveto face-to-face meetings, including working from home and working atanother company facility.

Many attempts have been made to use telecommunications technology toovercome the impact on collaboration of working remotely. However, evenin today's digital workplace, collaborating team members physicallylocated outside of a central location, such as a main office, still donot fully enjoy the benefits of in-person collaboration. While diversephysical locations may be convenient or even necessary, collaborationefforts as a whole often suffer. For example, many aspects ofspontaneous collaboration are lost when collaborating workers are indifferent physical locations. When spontaneous collaboration does occur,there is no easy way for a remote worker to jump into that discussion.Even if a teleconference is hastily arranged, remote workers oftencannot communicate non-verbally and the remote worker(s) may not evenknow who is in the room or participating.

SUMMARY

In some embodiments, systems and methods are provided for virtualco-location for facilitating collaboration between a local user in aroom and a remote user outside the room, utilizing, for example, an IOTdevice and a remote computer. According to some embodiments, the systemsand methods may provide one or more remote users opportunities forcollaboration with a local user (and/or team of users).

In some embodiments, the virtual co-location system may include an IOTdevice comprising a sound sensor configured to detect different soundlevels in a room to detect an ambient sound level and produce anelectronic sound signal representing the ambient sound level, a lightsensor configured to detect different light levels in the room to detectan ambient light level and produce an electronic light signalrepresenting the ambient light level, a microphone, a beacon light, aspeaker, a user control interface (e.g., an I/O device, such as atouchscreen) comprising a control input adjusted by the local user, theuser control interface producing an electronic control signalrepresenting a setting of a control device, and a local microprocessorfor executing local collaboration software. In some embodiments, thelocal collaboration software causes the electronic sound signal, theelectronic light signal, and the electronic control signal to bereceived and stored. In further embodiments, at least one of theelectronic sound signal, a signal indicating an absence of sound at orbeyond an audio threshold, and a signal indicating a presence of soundat or beyond the audio threshold may be transmitted the remote user, andat least one of the electronic light signal, a signal indicating anabsence of light at or beyond an illumination threshold, and a signalindicating a presence of light at or beyond the illumination thresholdmay be transmitted to the remote user. In other embodiments, the localcollaboration software receives a hand raise signal from the remote userand causes at least one of the beacon light to be illuminated and thespeaker to produce a sound. In further embodiments, the virtualco-location system also includes a remote computer having a remotemicroprocessor for executing remote collaboration software to receiveand store at least one of the electronic sound signal, the signalindicating the absence of sound at or beyond an audio threshold, and thesignal indicating the presence of sound at or beyond the audiothreshold, and at least one of the electronic light signal, the signalindicating the absence of light at or beyond an illumination threshold,and the signal indicating a presence of light at or beyond theillumination threshold. In some embodiments, the remote collaborationsoftware transmits the hand raise signal from the remote computer to theIOT device.

BRIEF DESCRIPTION OF THE DRAWINGS

The figures depict embodiments for purposes of illustration only. Oneskilled in the art will readily recognize from the following descriptionthat alternative embodiments of the systems and methods illustratedherein may be employed without departing from the principles describedherein, wherein:

FIG. 1 is a block diagram of a system according to some embodiments;

FIG. 2 is a block diagram of a system according to some embodiments;

FIG. 3 is a perspective diagram of a system according to someembodiments;

FIG. 4A and FIG. 4B are diagrams of a system providing exampleinterfaces according to some embodiments;

FIG. 5 is a systemic flow diagram of a method according to someembodiments;

FIG. 6 is a block diagram of an apparatus according to some embodiments;and

FIG. 7A, FIG. 7B, FIG. 7C, FIG. 7D, and FIG. 7E are perspective diagramsof exemplary data storage devices according to some embodiments.

DETAILED DESCRIPTION

The following description and drawings are illustrative and are not tobe construed as limiting. Numerous specific details are described toprovide a thorough understanding of the disclosure. However, in certaininstances, well known or conventional details are not described in orderto avoid obscuring the description.

Reference in this specification to “one embodiment,” “an embodiment,”“some embodiments,” or the like, means that a particular feature,structure, characteristic, advantage or benefit described in connectionwith the embodiment is included in at least one embodiment of thedisclosure, but may not be exhibited by other embodiments. Theappearances of the phrase “in one embodiment” in various places in thespecification are not necessarily all referring to the same embodiment,nor are separate or alternative embodiments mutually exclusive of otherembodiments. Similarly, various requirements are described which may berequirements for some embodiments but not for other embodiments. Thespecification and drawings are to be regarded in an illustrative senserather than a restrictive sense. Various modifications may be madethereto without departing from the scope as set forth in the claims.

In some embodiments, the systems and methods described in detail hereinprovide a virtual co-location system for facilitating collaborationbetween a local user in a room and a remote user outside the room, e.g.,including an IOT device that includes a sound sensor, a light sensor, amicrophone, a beacon light, a speaker, a user control interface, and alocal microprocessor for executing local collaboration software forcommunication with a remote computer.

Embodiments described herein are descriptive of systems, apparatus,methods, interfaces, and articles of manufacture for virtualco-location. An in-room “local” device may, for example, accept inputand provide output serving as a “proxy” for a remote worker's presencein the room. The in-room device (e.g., an IOT device) may, in someembodiments, comprise a prominent “beacon” or other alert device thatserves as an indication in the room of input received from the remoteworker (e.g., as input via the remote worker's electronic device). Insuch a manner, for example, the remote worker (or workers or otherremote users) may initiate a virtual “hand raise” to alert those in theroom regarding the remote worker/user. In some embodiments, the localdevice may comprise a telepresence device comprising two-way voice andimage (and/or video) communications, as well as at least one prominentoutput feature to supplement voice and image communications. Theprominent output feature may be utilized, for example, to attractattention during spirited discussions so that the remote worker isbetter equipped to attract local users' attention and/or to provide aconvenient mechanism via which the remote worker (or a plurality ofremote workers) may vote on an issue or resolution (e.g., a vote tallyindicator).

Referring first to FIG. 1, a block diagram of a system 100 according tosome embodiments is shown. In some embodiments, the system 100 maycomprise a plurality of user devices 102 a-n, a network 104, a pluralityof virtual co-location devices 106 a-n (e.g., disposed at a meetinglocation 108, such as a conference room), a controller device 110,and/or a database 140. As depicted in FIG. 1, any or all of thecomponents 102 a-n, 106 a-n, 108, 110, 140 (or any combinations thereof)may be in communication via the network 104. In some embodiments, thesystem 100 may be utilized to provide virtual co-locationfunctionality—e.g., allowing one or more remote users (not shown) of theuser devices 102 a-n to more fully integrate with deliberations ongoingat the meeting location 108). One or more of the virtual co-locationdevices 106 a-n may, for example, interface with one or more of the userdevices 102 a-n and/or the controller device 110 to provide visualand/or audio indications of input provided by the user devices 102 a-n,at the meeting location 108. In some embodiments, such visual and/oraudio indications may be supplemental to visual and/or audiocommunications output as part of a conversation (e.g., voice and facialimages/video).

Fewer or more components 102 a-n, 104, 106 a-n, 108, 110, 140 and/orvarious configurations of the depicted components 102 a-n, 104, 106 a-n,108, 110, 140 may be included in the system 100 without deviating fromthe scope of embodiments described herein. In some embodiments, thecomponents 102 a-n, 104, 106 a-n, 108, 110, 140 may be similar inconfiguration and/or functionality to similarly named and/or numberedcomponents as described herein. In some embodiments, the system 100(and/or portion thereof) may comprise a virtual co-location program,system, and/or platform programmed and/or otherwise configured toexecute, conduct, and/or facilitate the systemic method 500 of FIG. 5herein, and/or portions thereof.

The user devices 102 a-n, in some embodiments, may comprise any types orconfigurations of computing, mobile electronic, network, user, and/orcommunication devices that are or become known or practicable. The userdevices 102 a-n may, for example, comprise one or more tablet computerssuch as an iPad® manufactured by Apple®, Inc. of Cupertino, Calif.,and/or cellular and/or wireless telephones or “smart” phones such as aniPhone® (also manufactured by Apple®, Inc.) or an Optimus™ S smart phonemanufactured by LG® Electronics, Inc. of San Diego, Calif., and runningthe Android® operating system from Google®, Inc. of Mountain View,Calif. In some embodiments, the user devices 102 a-n may comprisedevices owned and/or operated by one or more users, such as a remoteemployee, worker, and/or other user. According to some embodiments, theuser devices 102 a-n may communicate with the controller device 110 viathe network 104 to execute a virtual co-location application (or aportion thereof), as described herein. According to some embodiments,the user devices 102 a-n may store and/or execute specially programmedinstructions (such as a mobile device virtual co-location application)to operate in accordance with embodiments described herein. The userdevices 102 a-n may, for example, execute one or more virtualco-location programs that communicate with one or more of the virtualco-location devices 106 a-n (directly or via the controller device 110)situated at or in the meeting location 108, which may be remote from theparticular user device(s) 102 a-n utilized.

In some embodiments, the user devices 102 a-n may interface with thecontroller device 110 to effectuate communications (direct or indirect)with one or more other user devices 102 a-n (such communication notexplicitly shown in FIG. 1) operated by other users. In someembodiments, the user devices 102 a-n may interface with the controllerdevice 110 to effectuate communications (direct or indirect) with one ormore of the virtual co-location devices 106 a-n (such communication alsonot explicitly shown in FIG. 1). In some embodiments, the virtualco-location devices 106 a-n may transmit and/or broadcast statusinformation descriptive of a current status of the meeting location 108,such as whether the meeting location 108 is occupied, how many peopleare at/in the meeting location 108, etc. According to some embodiments,the virtual co-location devices 106 a-n may utilize one or more beacons(lights, speakers) in addition to standard voice/image/videocommunication devices to output special indications from the userdevices 102 a-n, such as virtual “hand raises”, vote tallies,participant status, etc.

The network 104 may, according to some embodiments, comprise a LocalArea Network (LAN; wireless and/or wired), cellular telephone,Bluetooth® and/or Bluetooth® Low-Energy (BLE), Near Field Communication(NFC), and/or Radio Frequency (RF) network with communication linksbetween the controller device 110, the user devices 102 a-n, the virtualco-location devices 106 a-n, and/or the database 140. In someembodiments, the network 104 may comprise direct communications linksbetween any or all of the components 102 a-n, 106 a-n, 110, 140 of thesystem 100. The user devices 102 a-n may, for example, be directlyinterfaced or connected to one or more of the controller device 110and/or the virtual co-location devices 106 a-n via one or more wires,cables, wireless links, and/or other network components, such networkcomponents (e.g., communication links) comprising portions of thenetwork 104. In some embodiments, the network 104 may comprise one ormany other links or network components other than those depicted inFIG. 1. The user devices 102 a-n may, for example, be connected to thecontroller device 110 via various cell towers, routers, repeaters,ports, switches, and/or other network components that comprise theInternet and/or a cellular telephone (and/or Public Switched TelephoneNetwork (PSTN)) network, and which comprise portions of the network 104.

While the network 104 is depicted in FIG. 1 as a single object, thenetwork 104 may comprise any number, type, and/or configuration ofnetworks that is or becomes known or practicable. According to someembodiments, the network 104 may comprise a conglomeration of differentsub-networks and/or network components interconnected, directly orindirectly, by the components 102 a-n, 106 a-n, 110, 140 of the system100. The network 104 may comprise one or more cellular telephonenetworks with communication links between the user devices 102 a-n andthe controller device 110, for example, and/or may comprise a BLE, NFC,and/or “personal” network comprising wireless communications between thevirtual co-location devices 106 a-n and the user devices 102 a-n and/orcontroller device 110, for example.

The virtual co-location devices 106 a-n, in some embodiments, maycomprise any type or configuration of devices that include varioussensors, input devices, output devices, I/O devices, communicationdevices, and/or specialized indication devices (e.g., a beacon) that areor become known or practicable. In some embodiments, the virtualco-location devices 106 a-n comprise telecommunication and/ortelepresence devices that allow two-way voice/image/video communicationsfor remote collaboration—e.g., a video conference. According to someembodiments, the virtual co-location devices 106 a-n may also comprisespecialized indication devices such as a light beacon, LED display,speaker, noise maker (e.g., a piezo-electric buzzer), etc., which may beutilized to allow a remote user, via one of the user devices 102 a-n, toindicate a virtual “hand raise”, a vote, and/or other virtualco-location status indication.

In some embodiments, the controller device 110 may comprise anelectronic and/or computerized controller device, such as a computerserver communicatively coupled to interface with the user devices 102a-n (directly and/or indirectly) and/or the virtual co-location devices106 a-n. The controller device 110 may, for example, comprise one ormore PowerEdge™ M910 blade servers manufactured by Dell®, Inc. of RoundRock, Tex., which may include one or more Eight-Core Intel® Xeon® 7500Series electronic processing devices. According to some embodiments, thecontroller device 110 may be located remote from one or more of the userdevices 102 a-n, the virtual co-location devices 106 a-n, and/or themeeting location 108. The controller device 110 may also oralternatively comprise a plurality of electronic processing deviceslocated at one or more various sites and/or locations (e.g., other thanthe meeting location 108). In some embodiments, the virtual co-locationdevices 106 a-n may operate in accordance with logic, rules, thresholds,triggers, and/or instructions stored in and/or accessible via thedatabase 140.

According to some embodiments, the controller device 110 may storeand/or execute specially programmed instructions to operate inaccordance with embodiments described herein. The controller device 110may, for example, execute one or more programs that facilitate and/orcause the provision of virtual co-location functionality as describedherein. According to some embodiments, the controller device 110 maycomprise a computerized processing device, such as a PC, laptopcomputer, computer server, and/or other network or electronic device tomanage the virtual co-location of a user (not shown) of a first userdevice 102 a at the meeting location 108 via a first one of the virtualco-location devices 106 a.

In some embodiments, the controller device 110, the virtual co-locationdevices 106 a-n, and/or the user devices 102 a-n may be in communicationwith the database 140. The database 140 may store, for example, rules,logic, login information, security credentials, protocols, and/orinstructions that cause various devices (e.g., the controller device110, the virtual co-location devices 106 a-n, the and/or the userdevices 102 a-n) to operate in accordance with embodiments describedherein. In some embodiments, the database 140 may comprise any type,configuration, and/or quantity of data storage devices that are orbecome known or practicable. The database 140 may, for example, comprisean array of optical and/or solid-state hard drives configured to storeuser identifiers, device identifiers, status data, and/or virtualco-location signals provided by (and/or requested by) the user devices102 a-n and/or the controller device 110, and/or various operatinginstructions, drivers, etc. While the database 140 is depicted as astand-alone component of the system 100 in FIG. 1, the database 140 maycomprise multiple components. In some embodiments, a multi-componentdatabase 140 may be distributed across various devices and/or maycomprise remotely dispersed components. Any or all of the user devices102 a-n, the virtual co-location devices 106 a-n, or the controllerdevice 110 may comprise the database 140 or a portion thereof, forexample.

Referring now to FIG. 2, a block diagram of system 200 according to someembodiments is shown. In some embodiments, the system 200 may comprise aremote user device 202 a and/or a local user device 202 b incommunication, e.g., via a network 204, with a virtual co-locationdevice 206 disposed within and/or situated at a first, “local”, ormeeting location 208. In some embodiments, the virtual co-locationdevice 206 and/or the user devices 202 a-b may be in communication with(e.g., via the network 204) a server 210.

According to some embodiments, the virtual co-location device 206 maycomprise a processor 212 in communication with and/or in control of asound sensor 214 a, a light sensor 214 b, a proximity sensor 214 c, amicrophone 214 d, a beacon 216 a, an I/O device 216 b, a speaker 216 c,and/or a communication device (e.g., transceiver) 218. In someembodiments, the sound sensor 214 a may be configured to detect soundsassociated with the presence of people at the meeting location 208(e.g., in the room). According to some embodiments, the sound sensor 214a may comprise an omnidirectional microphone with sufficient gain todetect human voices, for example, the voices of workers collaborating inthe room of the meeting location 208 (e.g., in the case that the meetinglocation 208 comprises a room). In some embodiments, the proximitysensor 214 c may comprise a Passive Infrared Radiation (PIR), optical,microwave, and/or acoustic motion sensor operable to detect movementand/or proximity (e.g., presence) within the meeting location 208.

According to some embodiments, the remote user device 202 a may comprisea first memory 240 a and/or the virtual co-location device 206 maycomprise a second memory 240 b. The first memory 240 a of the remoteuser device 202 a may store, for example, a first program or set ofinstructions, such as a mobile device or client-side application or“app” 242 a. In some embodiments, the second memory 240 b of the virtualco-location device 206 may store a second program or set ofinstructions, which may define various rules, thresholds, and/or logic242 b. According to some embodiments, the logic 242 b may cause theprocessor 212 to take action in response to signals received from any orall of the sound sensor 214 a, the light sensor 214 b, the proximitysensor 214 c, the microphone 214 d, the I/O device 216 b, and/or thecommunication device (e.g., transceiver) 218.

In some embodiments for example, the logic 242 b may cause the processor212 to produce, generate, and/or transmit one or more signals inresponse to received inputs. The logic 242 b may cause, in someembodiments, the processor 212 to produce a first signal defining afirst state indicating an absence of sound due to detected sound (i.e.,sound detected by the sound sensor 214 a) being at or below a predefinedaudio threshold and/or a second signal defining a second stateindicating a presence of detected sound that is above the predefinedaudio threshold. Such signals may, in some embodiments, be transmittedby the virtual co-location device 206, through the network 204 and tothe remote user device 202 a. According to some embodiments, the app 242a may cause the remote user device 202 a to generate and/or output anindication (e.g., via a GUI, not shown in FIG. 2; such as the interfaces420 a-b of FIG. 4A and/or FIG. 4B herein), e.g., based at least in parton the signal and/or the audio threshold, indicative of whether or notthere appears to be collaboration by workers in the room (e.g., detectedvolume levels and/or duration of volume levels (audio signature) overthe threshold may indicate an ongoing discussion or collaboration). Insuch a manner, for example, the virtual co-location device 206 mayprovide the remote user device 202 a with a “Room Empty”, “Room isQuiet”, “Collaboration is Ongoing”, and/or “Room Occupied” notification.In some embodiments, the predefined audio threshold may be adjustablevia input received from the remote user device 202 a, the remote userdevice 202 b, and/or the I/O device 216 b. In some embodiments, thesound sensor 214 a may sense, record, and/or “pick up” audio associatedwith one or more workers speaking at the meeting location 208 and thevirtual co-location device 206 may transmit a digitized and/orpacketized electronic audio stream using Voice-over Internet Protocol(VoIP) to the remote user device 202 a.

In some embodiments, the light sensor 214 b may be configured to detectlight associated with the presence of people in the meetinglocation/room 208. In some embodiments, the light sensor 214 b maycomprise a photodiode with sufficient gain to detect active officelighting, for example, a light turned on automatically or by workers inthe room of the meeting location 208. In some embodiments, the logic 242b may cause the processor 212 to produce a third signal (or first lightsignal) defining a third state (or a first light state) indicating anabsence of light (i.e., light detected by the light sensor 214 b) belowa predefined illumination threshold and/or a fourth signal (or secondlight signal) defining a fourth state (or second light state) indicatinga presence of light at or above the illumination threshold. Such signalsmay, in some embodiments, be transmitted by the virtual co-locationdevice 206, through the network 204 and to the remote user device 202 a.According to some embodiments, the app 242 a may cause the remote userdevice 202 a to generate and/or output an indication (e.g., via a GUI,not shown in FIG. 2; such as the interfaces 420 a-b of FIG. 4A and/orFIG. 4B herein), e.g., based at least in part on the signal and/or theillumination threshold, indicative of whether or not there appear to beworkers in the room (e.g., detected light levels and/or duration oflight levels (light signature) over the threshold may indicate movementsof an ongoing discussion or collaboration). In some embodiments, theillumination/light signals may be utilized to provide a “Room Empty” or“Room Occupied” notification to the remote user device 202 a. Accordingto some embodiments, such a notification may be provided separately fromany other notification. In some embodiments, the illumination/lightsignal may be utilized and/or provided in combination with one or moredetected sound levels and/or notifications to provide a “Room Empty” or“Room Occupied” notification. A “Room Empty” notification or state mayrequire, for example, that each of the light and sound levels bedetected or maintained below respective thresholds. In some embodiments,the predefined illumination threshold may be adjustable via inputreceived from the remote user device 202 a, the remote user device 202b, and/or the I/O device 216 b.

According to some embodiments, the proximity sensor 214 c may beconfigured to detect movement or presence indicative of people in themeeting location/room 208. In some embodiments, the proximity sensor 214c may comprise a dual mode PIR and microwave or ultrasonic deviceconfigured to detect movement and/or heat signatures of workers in theroom of the meeting location 208. In some embodiments, the logic 242 bmay cause the processor 212 to produce a fifth signal (or firstproximity signal) defining a fifth state (or a first proximity state)indicating an absence of movement/heat/mass (i.e., movement/heat/massdetected by the proximity sensor 214 c) below a predefined proximitythreshold and/or a sixth signal (or second proximity signal) defining asixth state (or second proximity state) indicating a presence ofmovement/heat/mass at or above the proximity threshold. Such signalsmay, in some embodiments, be transmitted by the virtual co-locationdevice 206, through the network 204 and to the remote user device 202 a.According to some embodiments, the app 242 a may cause the remote userdevice 202 a to generate and/or output an indication (e.g., via a GUI,not shown in FIG. 2; such as the interfaces 420 a-b of FIG. 4A and/orFIG. 4B herein), e.g., based at least in part on the proximity signaland/or the proximity threshold, indicative of whether or not thereappear to be workers in the room (e.g., detected motion/heat/mass levelsand/or duration of motion/heat/mass levels (proximity signature) overthe threshold may indicate movements/presence of an ongoing discussionor collaboration). In some embodiments, the proximity signals may beutilized to provide a “Room Empty” or “Room Occupied” notification tothe remote user device 202 a. According to some embodiments, such anotification may be provided separately from any other notification. Insome embodiments, the proximity signal may be utilized and/or providedin combination with one or more detected sound and/or or light levelsand/or notifications to provide a “Room Empty” or “Room Occupied”notification. A “Room Empty” notification or state may require, forexample, that each of the light, sound, and proximity levels be detectedor maintained below respective thresholds. In some embodiments, thepredefined proximity threshold may be adjustable via input received fromthe remote user device 202 a, the remote user device 202 b, and/or theI/O device 216 b.

In some embodiments, the beacon 216 a may be configured to be activatedby the remote user device 202 a, e.g., for getting the attention of oneor more workers in the room of the meeting location 208. The beacon 216a may, for example, be activated by the app 242 a (e.g., a clientsoftware application) executing on the remote user device 202 a inresponse to input from the remote user thereof. The remote user device202 a may, in some embodiments, send a signal indicative of a desire tocause a virtual “hand raise” to the virtual co-location device 206, forexample, and the signal may cause the processor 212 (e.g., via executionof the logic 242 b) to activate the beacon 216 a. In such a manner, evenwhile standard communications such as a teleconference and/or videoconference are ongoing via the virtual co-location device 206, thebeacon 216 a may cause special attention to be directed to the remoteworker who may otherwise be overlooked or ignored due to lack of actualphysical presence at the meeting location 208.

According to some embodiments, the speaker 216 c may produce (e.g., inresponse to an execution of the logic 242 b by the processor 212) anannouncement sound to provide an audio cue of occurrence of an eventand/or may provide voice data received from the remote user device 202 a(e.g., standard voice/video conferencing sound/voice). For example, insome embodiments, the speaker 216 c may produce, generate, and/or outputa buzzer-type sound to indicate activation by the remote user device 202a of the virtual co-location device 206. In some embodiments, thespeaker 216 c may produce, generate, and/or output audio playback, suchas verbal commentary from the remote user device 202 a. In someembodiments, audio playback through the speaker 216 c may be enabledwith a Universal Serial Bus (USB)-compatible sound card.

In some embodiments, the I/O device 216 b may be electrically coupled toreceive input from a local user via a control input panel, knob, button,and/or touch-screen interface component (no one of which are separatelydepicted). The I/O device 216 b may produce, generate, and/or output,for example, at least one electronic control signal representing asetting of the control input panel, button, switch, knob, etc. In someembodiments, the I/O device 216 b may include a display and/ortouchscreen device, such as a two (2)-line Red-Green-Blue (RGB) backlitLiquid Crystal Diode (LCD) display. In some embodiments, the I/O device216 b may include a rotary encoder knob and two (2) button sensors forreceiving input entered by hand by a local user. In some embodiments,the I/O device 216 b is adjusted by the local user and the I/O device216 b produces, generates, and/or outputs (e.g., in response to areceiving of the input) an electronic control signal representing asetting of the I/O device 216 b and/or the virtual co-location device206 (e.g., a request for a vote and/or a setting of a sound, light,and/or proximity threshold). In some embodiments, the I/O device 216 bdisplays output that reflects the setting of the I/O device 216 b(and/or the virtual co-location device 206) and provides visualconfirmation to the local user(s) of the settings, thereby enablingnavigation through installed software through the I/O device 216 b.

In some embodiments, the processor 212 may be configured and/or coupledfor executing instructions (e.g., the logic 242 b) and controllinginput/output signals with respect to the virtual co-location device 206,as described herein. In some embodiments, the processor 212 may compriseand/or be part of a computer board (not separately depicted), e.g., aCentral Processing Unit (CPU) mounted or formed on a Printed CircuitBboard (PCB). In some embodiments, the computer board may comprise anIntel® Edison Compute Module, produced by Intel Corporation, 2200Mission College Boulevard, Santa Clara, Calif. 95054. In someembodiments, the CPU on the Intel® Edison Compute Module may comprise adual-core Intel® Atom™ processor with a clock speed of five hundred(500) megahertz (MHz) configured to execute instructions (e.g., thelogic 242 b) in at least one of the C/C++, Python™, Node.js, HTML5, andJavaScript™ programming languages. In some embodiments, the processor212 may be Arduino-compatible and/or may be electrically coupled with anArduino Breakout Board produced by Intel® for I/O communications. Insome embodiments, the Arduino Breakout Board may be electrically coupledto a Base Shield V2 produced by Seed Development Limited, F5, Building8, Shiling Industrial Park, Xinwei, Number 32, Tongsha Road Xili Town,Nanshan District, Shenzhen, 518055 China, for I/O & sensor connectivity.

In some embodiments, the processor 212 and/or the virtual co-locationdevice 206 may be electrically coupled and/or in communication with thelocal user device 202 b, e.g., operated by a local user (not depicted).In some embodiments, the local user device 202 b and/or the local useris present in the meeting location/room 208. The local user device 202 bmay, in some embodiments, communicate wirelessly with the virtualco-location device 206 via the transceiver 218. According to someembodiments, the transceiver 218 may comprise a short-range wirelesscommunications device, such as an RF, IR, NFC, and/or BLE device. Insome embodiments, the local user and/or local user device 202 b hasadministrator privileges for accessing the virtual co-location device206, including the privilege of adjusting various settings andparameters associated with the virtual co-location device 206 (e.g.,threshold, preference, and/or other settings).

In some embodiments, the virtual co-location device 206 may beconfigured to be always operating, similar to a thermostat or arefrigerator. An operating state of the virtual co-location device 206may, in some embodiments, be maintained through Message Queue TelemetryTransport (MQTT) communication with an Amazon® Web Services (AWS) IOToffering executed on the server 210 and available from Amazon.com®,Inc., 410 Terry Avenue North, Seattle, Wash. 98109. In some embodiments,the virtual co-location device 206 pushes data through MQTTcommunication to a cloud service provided by AWS on or via the server210. The cloud service may perform various rules and send notificationsback to a “thick” windows client (e.g., the logic 242 b) executing onthe processor 212 in the virtual co-location device 206. The virtualco-location device 206 may transmit, in some embodiments, state databack to the cloud service/server 210. According to some embodiments, theremote user device 202 a receives alerts by executing a .NET thickclient software application (e.g., the app 242 a) as the localcollaboration software and setting the state of the virtual co-locationdevice 206 via HyperText Transfer Protocol (HTTP) posts to the AWS IOT“thing shadow” (e.g., a “thing shadow” or “device shadow” comprising acommunication layer between the app 242 a and the virtual co-locationdevice 206 such as a JSON™ document that is utilized to store andretrieve current state information for the virtual co-location device206 and/or the app 242 a; which may be implemented via a “thing shadow”service that reads and writes status information to the file).

In addition to detecting movement or presence indicative of people inthe meeting location/room 208, in some embodiments the proximity sensor214 c may also or alternatively comprise at least one of an RFID readerconfigured to detect an RFID tag and/or a NFC reader configured to readan NFC tag, wherein the proximity sensor 214 c detects at least one ofthe RFID tag and/or the NFC tag and transmits a corresponding signal tothe processor 212. In some embodiments, the RFID reader is physicallyand electrically coupled to a docking station of a local user (e.g., thelocal user device 202 b). Upon insertion of the local user's laptopcomputer into the docking bay, the RFID reader recognizes an RFID tagembedded in the laptop computer and transmits a signal to the virtualco-location device 206 (e.g., via the proximity sensor 214 c and/or thetransceiver 218) indicating that the local user's laptop (e.g., thelocal user device 202 b) is docked in the room and the local user iscorrespondingly likely to be present. In some embodiments, an NFC readerand NFC tag are used in place of an RFID reader and RFID tag.

Referring now to FIG. 3, a perspective diagram of a system 300 accordingto some embodiments is shown. In some embodiments, the system 300 maycomprise a user device 302 (e.g., comprising an RFID reader (or tag)302-1) and/or a virtual co-location device 306. The user device 302 may,in some embodiments, comprise a sensor, docking station, portreplicator, plug, and/or receptacle, such as the laptop docking stationdepicted in FIG. 3. According to some embodiments, the user device 302may comprise the RFID reader 302-1 that may, for example, detect apresence (e.g., a docking) of a laptop or other user electronic device(not shown for ease of illustration in FIG. 3; e.g., a user device 102a-n of FIG. 1 herein) in proximity thereto, e.g., due to a detection ofa presence of a corresponding and/or compatible RFID tag coupled thereto(not shown). In some embodiments, the user device 302 may transmitand/or otherwise provide an indication of the presence of a userelectronic device (and/or user; e.g., wearing a corresponding RFID tag)to the virtual co-location device 306. In such a manner, for example,and particularly in the case that multiple user devices 302 are disposedin a given meeting room, the virtual co-location device 306 may be madeaware of any or all users (and/or associated devices) present in themeeting location.

According to some embodiments, the virtual co-location device 306 may besimilar in configuration and/or functionality to the virtual co-locationdevices 106 a-n, 206 of FIG. 1 and/or FIG. 2 herein. The virtualco-location device 306 may comprise, for example, a housing 306-1 thathouses, mounts, retains, and/or otherwise couples (e.g., physicallyand/or magnetically) to a sound sensor 314 a, a light sensor 314 b, aproximity sensor 314 c, a microphone 314 d, a beacon 316 a (e.g.,comprising a light element 316 a-1, a sounder element 316 a-2, and/or apost element 316 a-3), an I/O device 316 b (e.g., comprising inputobjects 316 b-1, such as buttons), a speaker 316 c, and/or a networkcommunication device 318 (e.g., an antenna and/or network cableconnection). In some embodiments, the I/O device 316 b may output aninterface 320 and/or the virtual co-location device 306 may compriseand/or be powered by a power supply 360 (e.g., an A/C or D/C power cordappropriately coupled to receive power from any of a plurality ofpossible sources, such as an A/C wall outlet or receptacle at a meetinglocation).

In some embodiments, the beacon 316 a may be provided to enable enhancedvirtual co-location functionality. While the microphone 314 d and thespeaker 316 c may be utilized to conduct a two-way teleconferencebetween local (e.g., utilizing a device docked with and/or detected bythe user device 302) and remote users (not shown), for example, thebeacon 316 a may be utilized to provide special alerts to local usersregarding activity and/or input of one or more remote users. The postelement 316 a-3 of the beacon 316 a may be attached to a top portion ofthe housing 306-1 at a proximal end and attached to the light element316 a-1 at a distal end, such that the light element 316 a-1 stands outprominently among the components of the virtual co-location device 306.In such a manner, for example, a virtual “hand raise” trigger or commandfrom a remote user may cause the beacon 316 a (or the light element 316a-1 thereof) to emit light to capture the attention of local users. Insome embodiments, multiple remote users may utilize the virtualco-location device 306 and the beacon 316 a may accordingly beconfigured to output various different types of output, eachtype/configuration of output being representative of a different remoteuser. The light element 316 a-1 may, for example, be configured to emitdifferent colored light and/or be controlled by one or more remoteusers, and/or the beacon 316 a may comprise the sounder 316 a-2, thatmay be configured to emit different customized sounds or sound sequencesassigned to different remote users.

According to some embodiments, the virtual co-location device 306(and/or housing 306-1 thereof) may house any number, type, and/orconfiguration of local environmental sensors such as the sound sensor314 a, light sensor 314 b, and/or proximity sensor 314 c. The sensors314 a-c may be utilized, as described herein, to gather data regarding astatus of the local environment (e.g., of a room) of the system 300 suchas identifying sound, light, and/or proximity measurements that areindicative of activity (or lack of activity) in the environment. In someembodiments, specially-programmed and/or defined logic, rules, and/orthresholds may be utilized to identify one or more possible roomstatuses such as “Occupied”, “Empty”, or “Meeting in Progress”. Signalsindicating such statuses (and/or other statuses) may be sent to one ormore remote devices (not shown in FIG. 3) via the network communicationdevice 318. In some embodiments, input received back from one or moreremote devices (e.g., in response to signals indicative of room status)may be output via the beacon 316 a (e.g., in the case of a virtual “handraise”, a vote, etc.), the speaker 316 c, and/or the I/O device 316 b(e.g., via the interface 320). The interface 320 may display, forexample, an icon, avatar, image, and/or video of one or more remoteusers 328 and/or the beacon 316 a may be activated to draw attention tothe virtual co-location device 306 (and accordingly, to the remote userdisplayed/depicted on the I/O device 316 b). In some embodiments, theinput objects 316 b-1 of the I/O device 316 b may be utilized by localusers to interact with the virtual co-location device 306, such as toadjust display settings, set or manage sound, light, and/or proximitythresholds, set or manage time parameters, set or manage meetingattendance rules (e.g., security restrictions, options, and/or accesssettings—e.g., a passcode), and/or to activate meeting activities, suchas to initiate a vote, select a vote type or style (e.g., voting rules),etc.

Turning now to FIG. 4A and FIG. 4B, diagrams of a system 400 depicting auser device 402 providing instances of an example interface 420 a-baccording to some embodiments are shown. In some embodiments, theinterface 420 a-b may comprise a web page, web form, database entryform, API, spreadsheet, table, and/or application or other GUI via whicha user or other entity may enter data (e.g., provide or define input) toenable virtual co-location functionality, as described herein. Theinterface 420 a-b may, for example, comprise a front-end of a virtualco-location client-side and/or mobile device application, program,and/or platform programmed and/or otherwise configured to execute,conduct, and/or facilitate the systemic method 500 of FIG. 5 herein,and/or portions thereof. In some embodiments, the interface 420 a-b maybe output via a computerized device, such as the user device 402, whichmay for example, be similar in configuration to one or more of the userdevices 102 a-n, 202 a-b, 502 and/or the controller device 110, theserver 210, 510, and/or the apparatus 610, of FIG. 1, FIG. 2, FIG. 5,and/or FIG. 6 herein.

According to some embodiments, the interface 420 a-b may comprise one ormore tabs and/or other segmented and/or logically-presented data formsand/or fields. In some embodiments, the interface 420 a-b may beconfigured and/or organized to allow and/or facilitate entry ofinformation defining a meeting participation action of a user, such as avirtual “hand raise”, a vote, and/or other status or preferenceinformation. According to some embodiments, the interface 420 a-b maycomprise a menu page from which a user may select one or more optionsthat initiate specific functionality of the virtual co-locationapplication. As depicted in FIG. 4A, for example, a first version (orpage or instance) of the interface 420 a may comprise a first pop-up orwindow 422 a (e.g., defining a first input and/or output mechanism) byproviding a first area 422 a-1 (e.g., one or more data output and/orentry mechanisms, tools, objects, and/or features) that provides anindication of activity taking place in a remote location (e.g., ameeting room, office, etc.). As depicted, for example, the first area422 a-1 may indicate that the “Room is NOT Empty”—e.g., based uponapplication of one or more stored rules and/or thresholds to sensor datafrom one or more sensors (not shown in FIG. 4A) disposed and/or coupledto sense activity and/or conditions in the room/location. According tosome embodiments, a status of one or more remote sensors may be polledor queried to define the appropriate output for the first area 422 a-1.According to some embodiments, a timer and/or time-based rule and/orthreshold is included to better define the business hours thatcollaboration is most likely to take place in order to minimize falsepositive and/or false negative indications of collaboration.

In some embodiments, the first pop-up or window 422 a may comprise asecond area 422 a-2 (e.g., one or more data output and/or entrymechanisms, tools, objects, and/or features) that provides an indicationof whether or not a virtual “hand raise” is currently activated—e.g.,“Hand is NOT Raised”, as depicted. The first version (or page orinstance) of the interface 420 a and/or the second area 422 a-2 of thefirst pop-up or window 422 a may be utilized, for example, tocommunicate with and/or cause a remote beacon device (not shown in FIG.4A; e.g., a component of a virtual co-location device as describedherein) to output a specialized indication, such as a lighting of abeacon and/or sounding of an alert to make the virtual presence of theremote user known to individuals in the room/location. In someembodiments, a status of the beacon may be polled or queried to definethe appropriate output for the second area 422 a-2. According to someembodiments, the first pop-up or window 422 a may comprise a third area422 a-3 (e.g., one or more data output and/or entry mechanisms, tools,objects, and/or features) that provides an indication of whether or nota vote or other collaborative information exchange is currently activeor ongoing—e.g., “NO Current Voting”, as depicted. Voting or otherinformation (e.g., polls, surveys, etc.) may be defined by a meetingorganizer or local (e.g., in-room) meeting participant by providinginput to a virtual co-location device in the room/location, for example,and such information may be retrieved and/or otherwise output via thethird area 422 a-3. In some embodiments, the first pop-up or window 422a may comprise a fourth area 422 a-4 (e.g., one or more data outputand/or entry mechanisms, tools, objects, and/or features) that comprisesa link to “Settings” for the software/application that generates thefirst version of the interface 420 a. The “Settings” link of the fourtharea 420 a-4 may, for example, allow the user to select and/or defineone of a subset of available rooms/locations to monitor and/or join(e.g., virtually join), one of a subset of available virtual co-locationdevices to utilize, settings for the virtual “hand raise” beacon (e.g.,illumination intensity, color, blink or fade rate, alert sound, volume,etc.), invite participants, edit a user profile and/or information, suchas security access credentials, and/or select and/or define otheruser-preferences and/or setting values. The “Settings” link of thefourth area 420 a-4 may, when actuated or selected by the user, forexample, initiate a sub-routine that enables the entry of variouspreference and/or settings information for the client-side virtualco-location application executed by the user device 402.

According to some embodiments, the first version (or page or instance)of the interface 420 a may comprise a second pop-up or window 424 thatmay alert the user of the user device 402 to active and/or ongoingcollaboration at the selected remote location. As depicted in FIG. 4A,for example, the indication of the “Room is NOT Empty” displayed in thefirst area 422 a-1 of the first pop-up or window 422 a may be indicativeof above-threshold noise, light, and/or proximity sensor readings at thelocation and the second pop-up or window 424 may alert the user that thestatus of the location is indicative of active collaboration (e.g., ameeting in progress). In some embodiments, the second pop-up or window424 may include the example text message and/or prompt “Collaboration isOccurring, Would you like to Join?” and/or may be accompanied by a tone,sound, flashing, and/or other alert output via the user device 402.According to some embodiments, the second pop-up or window 424 (and/orthe first version of the interface 420 a) may accept input indicatingthat the user desires to join the meeting—e.g., a user click on orselection of the second pop-up or window 424. In some embodiments, thefirst version of the interface 420 a may comprise a virtual co-locationstatus box 426 a that indicates whether the user device 402 is currentlyin control of (and/or in communication with) a virtual co-locationdevice at the meeting location. As depicted in FIG. 4A, as the user maybe alerted to an active meeting via the second pop-up or window 424, buthas not yet accepted the invitation to join, the current status of theuser device 402 may be displayed by the virtual co-location status box426 a as not being connected/virtually co-located (e.g., no check in thebox).

Referring to FIG. 4B, a second version (or page or instance) of theinterface 420 b may comprise a second version of the first pop or window422 b (e.g., defining a second input and/or output mechanism) byproviding second versions of the first area 422 b-1, the second area 422b-2, and/or the third area 422 b-3. The second version (or page orinstance) of the interface 420 b may be utilized to participate remotelyin a meeting in a virtual co-location manner that permits enhanced userparticipation, for example, and/or the second version (or page orinstance) of the interface 420 b may be provided in response to one ormore inputs provided via a different version of the interface 420 a. Thesecond pop-up or window 424 of the first version of the interface 420 amay, for example, upon a triggering and/or receipt of input from theuser (e.g., a properly-positioned click of a mouse or other pointer)with respect to the second pop-up or window 424, trigger a call toand/or otherwise cause a provision, generation, and/or outputting of thesecond version of the interface 420 b. In some embodiments, such atrigger may comprise an indication of a desire to join the meeting andmay initiate and/or cause a communicative coupling of the user device402 to one or more virtual co-location devices and/or associated servers(not shown in FIG. 4B). In some embodiments, a second version of thevirtual co-location status box 426 b may be updated and/or configured toindicate that the user device 402 (and any attendant user) is nowconnected to a virtual co-location device and participating in themeeting (e.g., via the depicted check in the box).

In some embodiments, the second version of the first area 422 b-1 may beupdated and/or configured to indicate that the “Room is Quiet”, thesecond version of the second area 422 b-2 may be updated and/orconfigured to indicate that the user's hand is virtually “Raised” (e.g.,that a remote beacon device has been activated), and/or the secondversion of the third area 422 b-3 may be updated and/or configured toindicate that there has been a “Vote Request” in the meeting. The secondversion of the second area 422 b-2 may indicate the virtual “hand raise”in response to a selection of the second area 422 a-2 by the user, forexample, to trigger the “hand raise” once (or as) the meeting is joined.The user may, in some embodiments, trigger such a “hand raise” inresponse to the vote being called, as is indicated in the second versionof the third area 422 b-3. According to some embodiments, once themeeting is joined, the functionality of the first area 422 a-1, 422 b-1may be altered (e.g., based on stored rules and/or logic). Once themeeting is joined and until the meeting is adjourned or people start toleave the room, for example, general presence or activity in the roommay not be of interest (e.g., it is known that the room is occupiedbecause the remote user is participating in the meeting, presumably byinteracting with other attendees in the meeting location). Otherdynamics of the room/meeting may be of more interest, however. Asdisplayed in the second version of the first area 422 b-1, for example,sensor levels (e.g., sound, as depicted) may be utilized to gauge aneffectiveness of the actuated virtual “hand raise”. In the example ofFIG. 4B, for example, the virtual “hand raise” initiated by the userdevice 402 (e.g., as indicated by the second version of the second area422 b-2) may have been noticed by the local meeting participants, whohave gone quiet, e.g., waiting for input from the remote user of theuser device 402.

According to some embodiments, the second version of the interface 420 bmay comprise an attendee area 428 that may, as depicted, for example,display avatars, icons, images, and/or video (e.g., live videoconferencing feed) representing one or more other attendees (remoteand/or local) participating in the meeting. In some embodiments, theuser may utilize the attendee area 428 to trigger private messages toselected attendees, retrieve data descriptive of selected attendees(e.g., profile information), and/or may be notified of certainattributes or events. As depicted in FIG. 4B, for example, one of theother attendees (remote or local to the meeting place) may have alsotriggered a virtual “hand raise” (or have voted, or voted in aparticular manner), which may be indicated by an attendee notificationicon 428-1.

While various components of the interface 420 a-b have been depictedwith respect to certain labels, layouts, headings, titles, and/orconfigurations, these features have been presented for reference andexample only. Other labels, layouts, headings, titles, and/orconfigurations may be implemented without deviating from the scope ofembodiments herein. Similarly, while a certain number of tabs,information screens, form fields, and/or data entry options have beenpresented, variations thereof may be practiced in accordance with someembodiments.

Referring to FIG. 5, a systemic flow diagram of a method or process 500according to some embodiments, is shown. In some embodiments, theprocess 500 may comprise and/or define a method for facilitatingcollaboration between a local user in a room and a remote user outsidethe room. The process 500 may, for example, be executed by varioushardware and/or logical components via interactive communications, whichmay involve communications between any or all of a remote device 502, avirtual co-location device 506, and/or a server 510. According to someembodiments, the virtual co-location device 506 may comprise aprocessing unit 512, one or more sensors 514 a-c, a microphone 514 d, abeacon 514 a, an I/O device 516 b, a speaker 516 c, and/or a memory 540(e.g., storing application instructions 542). In some embodiments, thevirtual co-location process 500 for facilitating collaboration may beginwith providing, configuring, installing, powering-up, and/or connectingthe virtual co-location device 506. In some embodiments, the process 500may include providing the remote device 502 and/or software executedthereupon (e.g., an application downloadable from the server 510).

In some embodiments, the process 500 (e.g., for providing virtualco-location functionality and/or enhancements to the remote device 502)may comprise transmitting data descriptive of a sensor reading (e.g.,recorded and/or sensed in a particular location, such as a meeting room)from at least sensor 514 a-c (e.g., light, sound, proximity, and/orother sensors, such as pressure sensors, etc.) to the processing unit512 (and accordingly the receipt of the data thereof) of the virtualco-location device 506, at “1”. In some embodiments, the processing unit512 may utilize the receipt of the sensor data to trigger a call orinitiation of the application instructions 542, at “2”. In someembodiments, the application instructions 542 may also or alternativelyperform a polling loop, causing the application instructions 542 to beautomatically waiting for receipt of the sensor data from the sensor 516a-c. According to some embodiments, upon receipt of the sensor dataand/or a trigger or call by the processing device 512, the applicationinstructions 542 may automatically cause a status update to be sent tothe remote user device 502. The application instructions 542 may, forexample, send the sensor data (and/or data processed as a result of thesensor data being sensed) as input to the server 510, at “3”. Thetransmitting at “3” may, in some embodiments, result from an automaticactivation of a hard-coded network address or remote identifier of theserver 510 embedded within and/or accessible to the applicationinstructions 542. In some embodiments, the server 510 may utilize theinformation received at “3” to structure and/or initiate a status updatesignal sent to the remote device 502, at “4”.

According to some embodiments, at “5” the remote device 502 may utilizethe status update information (e.g., sensor data, readings, and/orsensor data analysis results such as “Room Quiet” or “Meeting Started”)received at “4” to initiate a joining of a meeting and/or collaborationat the location of the virtual co-location device 506. The remote device502 may, for example, initiate and/or establish communications withand/or control over the virtual co-location device 506. In someembodiments, the remote device 502 may transmit a join request orresponse (“RS”) to the server 510, at “6”. The server 510 may forward ortransmit the response received at “6” to the virtual co-location device506 (and/or the application instructions 542 thereof) at “7”. Thetransmission at “7” may, for example, comprise a response (“RS”) to theprovision of the data as input at “3”. In such a manner, for example,the virtual co-location device 506 may automatically establishcommunications with and/or initiate an active communications sessionwith the remote device 502, e.g., upon detection of activity in aroom/location meeting specified criteria indicative of a collaboration.

The application instructions 542 may utilize the information received at“7”, for example, to initiate two-way voice, image, and/or videocommunications between the remote device 502 and the virtual co-locationdevice 506. The application instructions 542 may output, via atransmission to the speaker 516 c at “8” for example, voice and/or otheraudible data from the remote device 502 (e.g., output into theroom/location for the benefit of any local users/participants). In someembodiments, the application instructions 542 may wait to receive a userselection of the user-selectable object (or a subset of selectableobjects). According to some embodiments, voice and/or other audible datafrom the room/location may be recorded by the microphone 514 d, e.g.,upon activation caused by the receipt of the join/voice data received at“7”. The microphone 514 d may, for example, transmit the recorded datato the application instructions 542, at “9”. In some embodiments, theapplication instructions 542 may forward or transmit the recorded datato the remote device 502 (e.g., via the server 510), at “10”. In such amanner, for example, communications of various desirable types and/orformats may be exchanged between the room/location (e.g., via thevirtual co-location device 506) and the remote device 502.

In some embodiments, the virtual co-location device 506 may be utilizedto effectuate a virtual “hand raising” to get the attention of localmeting attendees. During a teleconference defined by the exchange ofdata at “7”, “8”, “9”, and/or “10, for example, a remote user loggedinto a client-side (e.g., remote and/or mobile device) applicationexecuting on the remote device 502 and participating in ongoingcollaboration with one or more workers in the room may desire to beheard and/or noticed. The remote user may cause the beacon 514 a to belit, for example, indicating that remote user would like to make aspoken comment. This mitigates or overcomes one of the difficulties ofremote collaboration, as compared to in-person collaboration. Within-person collaboration, a person can raise their hand or use a varietyof different body language postures to signal their desire to commentthat are not available to the typical remote participant. With theremote device 502 operating in conjunction with the virtual co-locationdevice 506, however, the remote user may remotely activate the beacon514 a by selecting, e.g., clicking on with a mouse, a “Raise Hand” softbutton output via the remote device 502. This may be accomplished, insome embodiments, by the defining of remote user input at “11”. At “12”,the remote user input may be transmitted and/or forwarded to theapplication instructions 542 (e.g., via the server 510). This may changea “hand raised” status of the remote user in the “shadow”. The shadowmay be updated in AWS (e.g., at the server 510) via an HTTP request andthe server 510 (e.g., AWS) may notify the virtual co-location device 506via MQTT (e.g., at “12”). According to some embodiments, the processingdevice 512, upon execution of the application instructions 542 and inresponse to the receiving of the remote user input at “12”, may send acommand or trigger to the beacon 516 a, at “13”. The trigger or commandmay cause various output via the beacon 516 a. The beacon 516 a (and/oranother output device such as the I/O device 516 b) may display thename, image, icon, avatar, and/or video of the remote user, for example,and/or may change the color of an emitted light to a color associatedwith (or assigned to) the remote user and/or cause a flashing orblinking output sequence. In some embodiments, the virtual co-locationdevice 506 may also or alternatively activate the beacon 516 a (and/orthe speaker 516 c) to provide an audio cue of the notification. Byremotely activating the beacon 516 a, the remote user can provide aneffective indication that they would like to provide spoken commentary,e.g., even while the underlying teleconference is in progress.

In some embodiments, the beacon 516 a is configured to display one of avariety of different colors or output one of a variety of differentsounds or sound and/or light sequences. For example, if five (5) remoteworkers are participating in a project, each of the five (5) workers maybe assigned a different color light, e.g., red, orange, yellow, green,and blue. In this fashion, activation of a predefined color of thebeacon 516 a indicates that a particular remote worker wishes to speak.In some embodiments, a First-In-First-Out (FIFO) queue is used todetermine who speaks next (e.g., in which order the beacon 516 a issequentially illuminated and/or caused to otherwise output).

In some embodiments, “remote labelling” is a variation of virtual “handraising”. The purpose of remote labelling is to request the opportunityto speak, for example, with the remote user (via the remote device 502)selectively causing a green light to be displayed by the beacon 516 a(“green card”). In essence, the remote user is labeling thecollaboration to be in need of their assistance. If the remote userselectively causes a yellow light to be displayed by the beacon 516 a(“yellow card”), that indicates to local users that the conversion ischurning and needs to move on. If the remote user selectively causes ared light to be displayed by the beacon 516 a (“red card”), thatindicates to local users that the conversion has gone off topic andshould be reined in.

In some embodiments, the virtual co-location device 506 may be utilizedfor effectuating and/or facilitating remote voting. According to someembodiments, a remote voting sequence may be initiated by a local userutilizing the virtual co-location device 506. Local user input may bereceived via the I/O device 516 b, for example, and passed to theprocessing unit 512, at “14”. The processing unit 512 may utilize thelocal user input to execute the application instructions 542 (or aportion thereof), at “15”. In some embodiments, the applicationinstructions 542 may utilize the local user input to set, define,modify, and/or adjust one or more settings of the virtual co-locationdevice 506, at “16”. The local user input may define or modify sensorthresholds or rules, for example, or may request an initiation of avoting sequence. According to some embodiments, the adjustment orrequest may be forwarded to the remote device 502 as a status update,request, or call, at “17”. At “18”, the remote user may utilize theremote device 502 to vote (e.g., provide voting input).

In some embodiments for example, the remote user may be logged into theclient-side application executed on the remote device 502 and/or may beparticipating in ongoing collaboration with one or more workers in theroom. Similar to virtual hand raising, in some embodiments, a local usermay cause their name and configurable color to be displayed via the I/Odevice 516 b (e.g., via the local user input at “14”) and/or via beacon516 a. The purpose of displaying the local user name and color may, forexample, be to enable the local user to call for a vote (e.g., at “15”,“16”, and/or “17”). In some embodiments, the remote users have the samecapability to call for a vote as the local users by using the remotedevice 502. Using a control input panel and/or a software menu displayedon a display of the I/O device 516 b, the local user selects the“Voting” menu by pressing a software-designated “check” button andselects the desired type of vote. In some embodiments, the type ofvoting selected from include “Fist of Five,” “Planning Poker,”“Fibonacci Numbers,” or other known voting approaches.

The processor 512 of the virtual co-location device 506 may, forexample, iterate over or through a list of users in the “shadow” thatare currently marked as “remote” and set a “Vote Requested” flag to thetype of vote requested and update the shadow on the server 510 (e.g.,AWS) via MQTT, e.g., at “17”. In some embodiments, the virtualco-location device 506 then enters a “waiting” mode displaying a waitingmessage on the I/O device 516 b, indicating how many votes it is waitingfor. On the remote device 502, a notification of the status change isreceived, at “17”. If the current user is one of the remote users in thelist and the “Vote Requested” field is filled in, a voting panel isdisplayed with the name of the type of the vote and appropriate choicesfor the vote. The remote user may, in some embodiments, click on theoption of their choice to generate a vote, at “18”. This updates a “VoteValue” flag in the “shadow” and updates the “shadow” in AWS (e.g., theserver 510) via HTTP, e.g., at “19”. According to some embodiments, oncean option is selected, the vote is locked so that the vote cannot berecast. The virtual co-location device 506 may receive notification ofthe vote value changes, e.g., from the server 510 at “19”, and iterateover the list of users. If more votes are outstanding, the I/O device516 b display is updated (e.g., at “20”) with the current number ofvotes received. If all votes have been received, the beacon 516 a mayilluminate and/or flash (e.g., at “21”) and the I/O device 516 b isupdated to display the names of the users who voted, their selectedvalues, and/or the results of the voting. At any time while voting is inprogress the local user can either cancel the vote by providing inputvia the I/O device 516 b (e.g., via a “back button”), or close the voteand view the incomplete results via the I/O device 516 b (e.g., via a“check button”). When a vote is cancelled, closed, or completed theclient-side application executed by the remote device 502 may be alertedand may hide the voting panel.

Turning to FIG. 6, a block diagram of an apparatus 610 according to someembodiments is shown. In some embodiments, the apparatus 610 may besimilar in configuration and/or functionality to any of the controllerdevice 110, the server 210, 510, the virtual co-location devices 106a-n, 206, 506, and/or the user devices 102 a-n, 202 a-b, 502 of FIG. 1,FIG. 2, and/or FIG. 5 herein. The apparatus 610 may, for example,execute, process, facilitate, and/or otherwise be associated with thesystemic method 500 of FIG. 5 herein, and/or portions thereof. In someembodiments, the apparatus 610 may comprise a processing device 612, aninput device 614, an output device 616, a communication device 618, aninterface 620, a memory device 640 (storing various programs and/orinstructions 642 and data 644), and/or a cooling device 650. Accordingto some embodiments, any or all of the components 612, 614, 616, 618,620, 640, 642, 644, 650 of the apparatus 610 may be similar inconfiguration and/or functionality to any similarly named and/ornumbered components described herein. Fewer or more components 612, 614,616, 618, 620, 640, 642, 644, 650 and/or various configurations of thecomponents 612, 614, 616, 618, 620, 640, 642, 644, 650 be included inthe apparatus 610 without deviating from the scope of embodimentsdescribed herein.

According to some embodiments, the processor 612 may be or include anytype, quantity, and/or configuration of processor that is or becomesknown. The processor 612 may comprise, for example, an Intel® IXP 2800network processor or an Intel® XEON™ Processor coupled with an Intel®E7501 chipset. In some embodiments, the processor 612 may comprisemultiple inter-connected processors, microprocessors, and/ormicro-engines. According to some embodiments, the processor 612 (and/orthe apparatus 610 and/or other components thereof) may be supplied powervia a power supply (not shown) such as a battery, an Alternating Current(AC) source, a Direct Current (DC) source, an AC/DC adapter, solarcells, and/or an inertial generator. In the case that the apparatus 610comprises a server such as a blade server or a virtual co-locationdevice, necessary power may be supplied via a standard AC outlet, powerstrip, surge protector, and/or Uninterruptible Power Supply (UPS)device.

In some embodiments, the input device 614 and/or the output device 616are communicatively coupled to the processor 612 (e.g., via wired and/orwireless connections and/or pathways) and they may generally compriseany types or configurations of input and output components and/ordevices that are or become known, respectively. The input device 614 maycomprise, for example, a keyboard that allows an operator of theapparatus 610 to interface with the apparatus 610 (e.g., by anadministrator, such as to setup a virtual co-location system and/or by auser to remotely participate in a meeting having enhanced virtualco-location functionality, as described herein). In some embodiments,the input device 614 may comprise a sensor, such as sound, light, and/orproximity sensor configured to measure parameter values and reportmeasured values via signals to the apparatus 610 and/or the processor612. The output device 616 may, according to some embodiments, comprisea display screen and/or other practicable output component and/ordevice, such as a specialized virtual co-location beacon as describedherein. The output device 616 may, for example, provide an interface(such as the interface 620 and/or the interface 420 a-b of FIG. 4Aand/or FIG. 4B herein) via which virtual co-location functionality isprovided to a user (e.g., via a website and/or mobile application).According to some embodiments, the input device 614 and/or the outputdevice 616 may comprise and/or be embodied in a single device such as atouch-screen monitor.

In some embodiments, the communication device 618 may comprise any typeor configuration of communication device that is or becomes known orpracticable. The communication device 618 may, for example, comprise aNetwork Interface Card (NIC), a telephonic device, a cellular networkdevice, a router, a hub, a modem, and/or a communications port or cable.In some embodiments, the communication device 618 may be coupled toreceive sensor data descriptive of a meeting room and/or forward suchdata to one or more other (e.g., remote) devices (not shown in FIG. 6).The communication device 618 may, for example, comprise a BLE and/or RFreceiver device that acquires local meeting room data from one or moresensors (not separately depicted in FIG. 6) and/or a transmitter devicethat provides the data to a remote server (also not shown in FIG. 6).According to some embodiments, the communication device 618 may also oralternatively be coupled to the processor 612. In some embodiments, thecommunication device 618 may comprise an IR, RF, Bluetooth™, Near-FieldCommunication (NFC), and/or Wi-Fi® network device coupled to facilitatecommunications between the processor 612 and another device (such as aremote user device and/or a virtual co-location device, not separatelyshown in FIG. 6).

The memory device 640 may comprise any appropriate information storagedevice that is or becomes known or available, including, but not limitedto, units and/or combinations of magnetic storage devices (e.g., a harddisk drive), optical storage devices, and/or semiconductor memorydevices such as RAM devices, Read Only Memory (ROM) devices, Single DataRate Random Access Memory (SDR-RAM), Double Data Rate Random AccessMemory (DDR-RAM), and/or Programmable Read Only Memory (PROM). Thememory device 640 may, according to some embodiments, store one or moreof virtual co-location instructions 642-1, interface instructions 642-2,meeting data 644-1, user data 644-2, and/or sensor data 644-3. In someembodiments, the virtual co-location instructions 642-1 and/or theinterface instructions 642-2 may be utilized by the processor 612 toprovide output information via the output device 616 and/or thecommunication device 618.

According to some embodiments, the virtual co-location instructions642-1 may be operable to cause the processor 612 to process the meetingdata 644-1, user data 644-2, and/or sensor data 644-3 in accordance withembodiments as described herein. Meeting data 644-1, user data 644-2,and/or sensor data 644-3 received via the input device 614 and/or thecommunication device 618 may, for example, be analyzed, sorted,filtered, decoded, decompressed, ranked, scored, plotted, and/orotherwise processed by the processor 612 in accordance with the virtualco-location instructions 642-1. In some embodiments, meeting data 644-1,user data 644-2, and/or sensor data 644-3 may be fed by the processor612 through one or more mathematical and/or statistical formulas and/ormodels in accordance with the virtual co-location instructions 642-1 toprovide enhanced virtual co-location functionality such as virtual “handraise” and/or remote/virtual voting functionality via a remote device,as described herein.

In some embodiments, the interface instructions 642-2 may be operable tocause the processor 612 to process the meeting data 644-1, user data644-2, and/or sensor data 644-3 in accordance with embodiments asdescribed herein. Meeting data 644-1, user data 644-2, and/or sensordata 644-3 received via the input device 614 and/or the communicationdevice 618 may, for example, be analyzed, sorted, filtered, decoded,decompressed, ranked, scored, plotted, and/or otherwise processed by theprocessor 612 in accordance with the interface instructions 642-2. Insome embodiments, meeting data 644-1, user data 644-2, and/or sensordata 644-3 may be fed by the processor 612 through one or moremathematical and/or statistical formulas and/or models in accordancewith the interface instructions 642-2 to provide an interface (such asthe interface 620 and/or the interface 420 a-b of FIG. 4A and/or FIG. 4Bherein) via which input and/or output descriptive of remote meetinglocation status and/or meeting participation/actions may be provided, asdescribed herein.

According to some embodiments, the apparatus 610 may comprise thecooling device 650. According to some embodiments, the cooling device650 may be coupled (physically, thermally, and/or electrically) to theprocessor 612 and/or to the memory device 640. The cooling device 650may, for example, comprise a fan, heat sink, heat pipe, radiator, coldplate, and/or other cooling component or device or combinations thereof,configured to remove heat from portions or components of the apparatus610.

Any or all of the exemplary instructions and data types described hereinand other practicable types of data may be stored in any number, type,and/or configuration of memory devices that is or becomes known. Thememory device 640 may, for example, comprise one or more data tables orfiles, databases, table spaces, registers, and/or other storagestructures. In some embodiments, multiple databases and/or storagestructures (and/or multiple memory devices 640) may be utilized to storeinformation associated with the apparatus 610. According to someembodiments, the memory device 640 may be incorporated into and/orotherwise coupled to the apparatus 610 (e.g., as shown) or may simply beaccessible to the apparatus 610 (e.g., externally located and/orsituated).

Referring to FIG. 7A, FIG. 7B, FIG. 7C, FIG. 7D, and FIG. 7E,perspective diagrams of exemplary data storage devices 740 a-e accordingto some embodiments are shown. The data storage devices 740 a-e may, forexample, be utilized to store instructions and/or data such as thevirtual co-location instructions 642-1, interface instructions 642-2,meeting data 644-1, user data 644-2, and/or sensor data 644-3, each ofwhich is presented in reference to FIG. 6 herein. In some embodiments,instructions stored on the data storage devices 740 a-e may, whenexecuted by a processor, cause the implementation of and/or facilitatethe systemic method 500 of FIG. 5 herein, and/or portions thereof.

According to some embodiments, the first data storage device 740 a maycomprise one or more various types of internal and/or external harddrives. The first data storage device 740 a may, for example, comprise adata storage medium 746 that is read, interrogated, and/or otherwisecommunicatively coupled to and/or via a disk reading device 748. In someembodiments, the first data storage device 740 a and/or the data storagemedium 746 may be configured to store information utilizing one or moremagnetic, inductive, and/or optical means (e.g., magnetic, inductive,and/or optical-encoding). The data storage medium 746, depicted as afirst data storage medium 746 a for example (e.g., breakoutcross-section “A”), may comprise one or more of a polymer layer 746 a-1,a magnetic data storage layer 746 a-2, a non-magnetic layer 746 a-3, amagnetic base layer 746 a-4, a contact layer 746 a-5, and/or a substratelayer 746 a-6. According to some embodiments, a magnetic read head 748 amay be coupled and/or disposed to read data from the magnetic datastorage layer 746 a-2.

In some embodiments, the data storage medium 746, depicted as a seconddata storage medium 746 b for example (e.g., breakout cross-section“B”), may comprise a plurality of data points 746 b-2 disposed with thesecond data storage medium 746 b. The data points 746 b-2 may, in someembodiments, be read and/or otherwise interfaced with via alaser-enabled read head 748 b disposed and/or coupled to direct a laserbeam through the second data storage medium 746 b.

In some embodiments, the second data storage device 740 b may comprise aCD, CD-ROM, DVD, Blu-Ray™ Disc, and/or other type of optically-encodeddisk and/or other storage medium that is or becomes know or practicable.In some embodiments, the third data storage device 740 c may comprise aUSB keyfob, dongle, and/or other type of flash memory data storagedevice that is or becomes know or practicable. In some embodiments, thefourth data storage device 740 d may comprise RAM of any type, quantity,and/or configuration that is or becomes practicable and/or desirable. Insome embodiments, the fourth data storage device 740 d may comprise anoff-chip cache such as a Level 2 (L2) cache memory device. According tosome embodiments, the fifth data storage device 740 e may comprise anon-chip memory device such as a Level 1 (L1) cache memory device.

The data storage devices 740 a-e may generally store programinstructions, code, and/or modules that, when executed by a processingdevice cause a particular machine to function in accordance with one ormore embodiments described herein. The data storage devices 740 a-edepicted in FIG. 7A, FIG. 7B, FIG. 7C, FIG. 7D, and FIG. 7E arerepresentative of a class and/or subset of computer-readable media thatare defined herein as “computer-readable memory” (e.g., non-transitorymemory devices as opposed to transmission devices or media).

Throughout the description herein and unless otherwise specified, thefollowing terms may include and/or encompass the example meaningsprovided. These terms and illustrative example meanings are provided toclarify the language selected to describe embodiments both in thespecification and in the appended claims, and accordingly, are notintended to be generally limiting. While not generally limiting andwhile not limiting for all described embodiments, in some embodiments,the terms are specifically limited to the example definitions and/orexamples provided. Other terms are defined throughout the presentdescription.

Some embodiments described herein are associated with a “user device” ora “network device”. As used herein, the terms “user device” and “networkdevice” may be used interchangeably and may generally refer to anydevice that can communicate via a network. Examples of user or networkdevices include a PC, a workstation, a server, a printer, a scanner, afacsimile machine, a copier, a Personal Digital Assistant (PDA), astorage device (e.g., a disk drive), a hub, a router, a switch, and amodem, a video game console, or a wireless phone. User and networkdevices may comprise one or more communication or network components. Asused herein, a “user” may generally refer to any individual and/orentity that operates a user device. Users may comprise, for example,customers, consumers, product underwriters, product distributors,customer service representatives, agents, brokers, etc.

As used herein, the term “network component” may refer to a user ornetwork device, or a component, piece, portion, or combination of useror network devices. Examples of network components may include a StaticRandom Access Memory (SRAM) device or module, a network processor, and anetwork communication path, connection, port, or cable.

In addition, some embodiments are associated with a “network” or a“communication network”. As used herein, the terms “network” and“communication network” may be used interchangeably and may refer to anyobject, entity, component, device, and/or any combination thereof thatpermits, facilitates, and/or otherwise contributes to or is associatedwith the transmission of messages, packets, signals, and/or other formsof information between and/or within one or more network devices.Networks may be or include a plurality of interconnected networkdevices. In some embodiments, networks may be hard-wired, wireless,virtual, neural, and/or any other configuration of type that is orbecomes known. Communication networks may include, for example, one ormore networks configured to operate in accordance with the Fast EthernetLAN transmission standard 802.3-2002® published by the Institute ofElectrical and Electronics Engineers (IEEE). In some embodiments, anetwork may include one or more wired and/or wireless networks operatedin accordance with any communication standard or protocol that is orbecomes known or practicable.

As used herein, the terms “information” and “data” may be usedinterchangeably and may refer to any data, text, voice, video, image,message, bit, packet, pulse, tone, waveform, and/or other type orconfiguration of signal and/or information. Information may compriseinformation packets transmitted, for example, in accordance with theInternet Protocol Version 6 (IPv6) standard as defined by “InternetProtocol Version 6 (IPv6) Specification” RFC 1883, published by theInternet Engineering Task Force (IETF), Network Working Group, S.Deering et al. (December 1995). Information may, according to someembodiments, be compressed, encoded, encrypted, and/or otherwisepackaged or manipulated in accordance with any method that is or becomesknown or practicable.

In addition, some embodiments described herein are associated with an“indication”. As used herein, the term “indication” may be used to referto any indicia and/or other information indicative of or associated witha subject, item, entity, and/or other object and/or idea. As usedherein, the phrases “information indicative of” and “indicia” may beused to refer to any information that represents, describes, and/or isotherwise associated with a related entity, subject, or object. Indiciaof information may include, for example, a code, a reference, a link, asignal, an identifier, and/or any combination thereof and/or any otherinformative representation associated with the information. In someembodiments, indicia of information (or indicative of the information)may be or include the information itself and/or any portion or componentof the information. In some embodiments, an indication may include arequest, a solicitation, a broadcast, and/or any other form ofinformation gathering and/or dissemination.

Numerous embodiments are described in this patent application, and arepresented for illustrative purposes only. The described embodiments arenot, and are not intended to be, limiting in any sense. The presentlydisclosed invention(s) are widely applicable to numerous embodiments, asis readily apparent from the disclosure. One of ordinary skill in theart will recognize that the disclosed invention(s) may be practiced withvarious modifications and alterations, such as structural, logical,software, and electrical modifications. Although particular features ofthe disclosed invention(s) may be described with reference to one ormore particular embodiments and/or drawings, it should be understoodthat such features are not limited to usage in the one or moreparticular embodiments or drawings with reference to which they aredescribed, unless expressly specified otherwise.

Devices that are in communication with each other need not be incontinuous communication with each other, unless expressly specifiedotherwise. On the contrary, such devices need only transmit to eachother as necessary or desirable, and may actually refrain fromexchanging data most of the time. For example, a machine incommunication with another machine via the Internet may not transmitdata to the other machine for weeks at a time. In addition, devices thatare in communication with each other may communicate directly orindirectly through one or more intermediaries.

A description of an embodiment with several components or features doesnot imply that all or even any of such components and/or features arerequired. On the contrary, a variety of optional components aredescribed to illustrate the wide variety of possible embodiments of thepresent invention(s). Unless otherwise specified explicitly, nocomponent and/or feature is essential or required.

Further, although process steps, algorithms or the like may be describedin a sequential order, such processes may be configured to work indifferent orders. In other words, any sequence or order of steps thatmay be explicitly described does not necessarily indicate a requirementthat the steps be performed in that order. The steps of processesdescribed herein may be performed in any order practical. Further, somesteps may be performed simultaneously despite being described or impliedas occurring non-simultaneously (e.g., because one step is describedafter the other step). Moreover, the illustration of a process by itsdepiction in a drawing does not imply that the illustrated process isexclusive of other variations and modifications thereto, does not implythat the illustrated process or any of its steps are necessary to theinvention, and does not imply that the illustrated process is preferred.

“Determining” something can be performed in a variety of manners andtherefore the term “determining” (and like terms) includes calculating,computing, deriving, looking up (e.g., in a table, database or datastructure), ascertaining and the like.

It will be readily apparent that the various methods and algorithmsdescribed herein may be implemented by, e.g., appropriately and/orspecially-programmed computers and/or computing devices. Typically aprocessor (e.g., one or more microprocessors) will receive instructionsfrom a memory or like device, and execute those instructions, therebyperforming one or more processes defined by those instructions. Further,programs that implement such methods and algorithms may be stored andtransmitted using a variety of media (e.g., computer readable media) ina number of manners. In some embodiments, hard-wired circuitry or customhardware may be used in place of, or in combination with, softwareinstructions for implementation of the processes of various embodiments.Thus, embodiments are not limited to any specific combination ofhardware and software

A “processor” generally means any one or more microprocessors, CPUdevices, computing devices, microcontrollers, digital signal processors,or like devices, as further described herein.

The term “computer-readable medium” refers to any medium thatparticipates in providing data (e.g., instructions or other information)that may be read by a computer, a processor or a like device. Such amedium may take many forms, including but not limited to, non-volatilemedia, volatile media, and transmission media. Non-volatile mediainclude, for example, optical or magnetic disks and other persistentmemory. Volatile media include DRAM, which typically constitutes themain memory. Transmission media include coaxial cables, copper wire andfiber optics, including the wires that comprise a system bus coupled tothe processor. Transmission media may include or convey acoustic waves,light waves and electromagnetic emissions, such as those generatedduring RF and IR data communications. Common forms of computer-readablemedia include, for example, a floppy disk, a flexible disk, hard disk,magnetic tape, any other magnetic medium, a CD-ROM, DVD, any otheroptical medium, punch cards, paper tape, any other physical medium withpatterns of holes, a RAM, a PROM, an EPROM, a FLASH-EEPROM, any othermemory chip or cartridge, a carrier wave, or any other medium from whicha computer can read.

The term “computer-readable memory” may generally refer to a subsetand/or class of computer-readable medium that does not includetransmission media such as waveforms, carrier waves, electromagneticemissions, etc. Computer-readable memory may typically include physicalmedia upon which data (e.g., instructions or other information) arestored, such as optical or magnetic disks and other persistent memory,DRAM, a floppy disk, a flexible disk, hard disk, magnetic tape, anyother magnetic medium, a CD-ROM, DVD, any other optical medium, punchcards, paper tape, any other physical medium with patterns of holes, aRAM, a PROM, an EPROM, a FLASH-EEPROM, any other memory chip orcartridge, computer hard drives, backup tapes, Universal Serial Bus(USB) memory devices, and the like.

Various forms of computer readable media may be involved in carryingdata, including sequences of instructions, to a processor. For example,sequences of instruction (i) may be delivered from RAM to a processor,(ii) may be carried over a wireless transmission medium, and/or (iii)may be formatted according to numerous formats, standards or protocols,such as Bluetooth™, TDMA, CDMA, 3G.

Where databases are described, it will be understood by one of ordinaryskill in the art that (i) alternative database structures to thosedescribed may be readily employed, and (ii) other memory structuresbesides databases may be readily employed. Any illustrations ordescriptions of any sample databases presented herein are illustrativearrangements for stored representations of information. Any number ofother arrangements may be employed besides those suggested by, e.g.,tables illustrated in drawings or elsewhere. Similarly, any illustratedentries of the databases represent exemplary information only; one ofordinary skill in the art will understand that the number and content ofthe entries can be different from those described herein. Further,despite any depiction of the databases as tables, other formats(including relational databases, object-based models and/or distributeddatabases) could be used to store and manipulate the data typesdescribed herein. Likewise, object methods or behaviors of a databasecan be used to implement various processes, such as the describedherein. In addition, the databases may, in a known manner, be storedlocally or remotely from a device that accesses data in such a database.

The present invention can be configured to work in a network environmentincluding a computer that is in communication, via a communicationsnetwork, with one or more devices. The computer may communicate with thedevices directly or indirectly, via a wired or wireless medium such asthe Internet, LAN, WAN or Ethernet, Token Ring, or via any appropriatecommunications means or combination of communications means. Each of thedevices may comprise computers, such as those based on the Intel®Pentium® or Centrino™ processor, that are adapted to communicate withthe computer. Any number and type of machines may be in communicationwith the computer.

The present disclosure provides, to one of ordinary skill in the art, anenabling description of several embodiments and/or inventions. Some ofthese embodiments and/or inventions may not be claimed in the presentapplication, but may nevertheless be claimed in one or more continuingapplications that claim the benefit of priority of the presentapplication. Applicants intend to file additional applications to pursuepatents for subject matter that has been disclosed and enabled but notclaimed in the present application.

Some embodiments herein describe a virtual co-location system forfacilitating collaboration between a local user (or users) in a room anda remote user (or users) outside the room. The virtual co-locationsystem may include, for example, an IOT device. The IOT device mayinclude a sound sensor configured to detect different sound levels inthe room to detect an ambient sound level and produce an electronicsound signal representing the ambient sound level, a light sensorconfigured to detect different light levels in the room to detect anambient light level and produce an electronic light signal representingthe ambient light level, a beacon light, a speaker, a user controlinterface comprising a control input adjusted by the local user, theuser control interface producing an electronic control signalrepresenting a setting of a control device, and a local microprocessorfor executing local collaboration software, wherein the localcollaboration software causes the electronic sound signal to be receivedand stored, the electronic light signal to be received and stored, theelectronic control signal to be received and stored, at least one of theelectronic sound signal, a signal indicating an absence of sound at orbeyond an audio threshold, and a signal indicating a presence of soundat or beyond the audio threshold to be transmitted the remote user, andat least one of the electronic light signal, a signal indicating anabsence of light at or beyond an illumination threshold, and a signalindicating a presence of light at or beyond the illumination thresholdto be transmitted to the remote user, wherein the local collaborationsoftware receives a hand raise signal from the remote user and causes atleast one of the beacon light to be illuminated and the speaker toproduce a sound. The virtual co-location system may also oralternatively include a remote computer having a remote microprocessorfor executing remote (e.g., client-side) collaboration software toreceive and store at least one of the electronic sound signal, thesignal indicating the absence of sound at or beyond an audio threshold,and the signal indicating the presence of sound at or beyond the audiothreshold, and at least one of the electronic light signal, the signalindicating the absence of light at or beyond an illumination threshold,and the signal indicating a presence of light at or beyond theillumination threshold, and wherein the remote collaboration softwaretransmits a virtual “hand raise” signal from the remote computer to theIOT device.

Some embodiments herein describe a virtual co-location method forfacilitating collaboration between a local user (or users) in a room anda remote user (or users) outside the room. The virtual co-locationmethod/process may include, for example, providing an IOT device. TheIOT device may include a sound sensor configured to detect differentsound levels in the room to detect an ambient sound level and produce anelectronic sound signal representing the ambient sound level, a lightsensor configured to detect different light levels in the room to detectan ambient light level and produce an electronic light signalrepresenting the ambient light level, a beacon light, a speaker, a usercontrol interface comprising a control input adjusted by the local user,the user control interface producing an electronic control signalrepresenting a setting of a control device, and a local microprocessorfor executing local collaboration software, wherein the localcollaboration software causes the electronic sound signal to be receivedand stored, the electronic light signal to be received and stored, theelectronic control signal to be received and stored, at least one of theelectronic sound signal, a signal indicating an absence of sound at orbeyond an audio threshold, and a signal indicating a presence of soundat or beyond the audio threshold to be transmitted the remote user, andat least one of the electronic light signal, a signal indicating anabsence of light at or beyond an illumination threshold, and a signalindicating a presence of light at or beyond the illumination thresholdto be transmitted to the remote user, wherein the local collaborationsoftware receives a hand raise signal from the remote user and causes atleast one of the beacon light to be illuminated and the speaker toproduce a sound. The virtual co-location method may also oralternatively include providing a remote computer having a remotemicroprocessor for executing remote collaboration software to receiveand store at least one of the electronic sound signal, the signalindicating the absence of sound at or beyond an audio threshold, and thesignal indicating the presence of sound at or beyond the audiothreshold, and at least one of the electronic light signal, the signalindicating the absence of light at or beyond an illumination threshold,and the signal indicating a presence of light at or beyond theillumination threshold, and wherein the remote collaboration softwaretransmits a virtual “hand raise” signal from the remote computer to theIOT device.

It will be understood that various modifications can be made to theembodiments of the present disclosure herein without departing from thescope thereof. Therefore, the above description should not be construedas limiting the disclosure, but merely as embodiments thereof. Thoseskilled in the art will envision other modifications within the scope ofthe invention as defined by the claims appended hereto.

What is claimed is:
 1. A virtual co-location device disposed at ameeting location, comprising: a housing coupled to: a processing device;a transceiver device in communication with the processing device, with aremote user device, and with a web service hosting a state file; abeacon in communication with the processing device; at least one of (i)a sound sensor, (ii) a light sensor, and (iii) a proximity sensor, beingdisposed to acquire data from the meeting location and being incommunication with the processing device; and a non-transitory memorydevice in communication with the processing device, the non-transitorymemory device storing (a) data defining at least one threshold and (b)logic instructions that when executed by the processing device, resultin: receiving, by the processing device and from the at least one of (i)the sound sensor, (ii) the light sensor, and (iii) the proximity sensor,an indication of a sensor reading for the meeting location; comparing,by the processing device, the sensor reading to the at least onethreshold; generating, by the processing device and in response to thecomparing, a signal indicative of a state of the meeting location;transmitting, by the transceiver device and to the web service, thesignal indicative of the state of the meeting location, thereby causingthe state file to be updated to be descriptive of the state of themeeting location; receiving, by the transceiver device, from the remoteuser device and in response to the updating of the state file, anindication of a virtual hand raise signal; and outputting, by the beaconand in response to the receiving of the virtual hand raise signal, atleast one of a visual and an audio indication of the virtual hand raisesignal.
 2. The virtual co-location device of claim 1, wherein thehousing is further coupled to: a display device in communication withthe processing device.
 3. The virtual co-location device of claim 2,wherein the logic instructions, when executed by the processing device,further result in: outputting, by the display device and in response tothe receiving of the virtual hand raise signal, an avatar representativeof a user of the remote user device.
 4. The virtual co-location deviceof claim 1, wherein the housing is further coupled to: a microphone incommunication with the processing device; and a speaker in communicationwith the processing device.
 5. The virtual co-location device of claim4, wherein the logic instructions, when executed by the processingdevice, further result in: conducting a two-way teleconference betweenone or more users at the meeting location and a user of the remote userdevice by: (i) transmitting, via the transceiver device and to theremote user device, sound detected by the microphone; (ii) receiving,via the transceiver device and from the remote user device, audioinformation; and (iii) outputting, via the speaker, the audioinformation.
 6. The virtual co-location device of claim 1, wherein thecomparing results in a determination that the sensor reading is abovethe at least one threshold, and wherein the signal indicative of thestate of the meeting location is indicative of the meeting room beingoccupied.
 7. The virtual co-location device of claim 1, wherein the atleast one of (i) the sound sensor, (ii) the light sensor, and (iii) theproximity sensor comprises the sound sensor and the light sensor, andwherein the sensor reading for the meeting location comprises each of asound sensor reading and a light sensor reading, and wherein the atleast one threshold comprises each of a sound threshold and a lightthreshold.
 8. The virtual co-location device of claim 1, wherein the atleast one of (i) the sound sensor, (ii) the light sensor, and (iii) theproximity sensor comprises the sound sensor and the proximity sensor,and wherein the sensor reading for the meeting location comprises eachof a sound sensor reading and a proximity sensor reading, and whereinthe at least one threshold comprises each of a sound threshold and aproximity threshold.
 9. The virtual co-location device of claim 1,wherein the at least one of (i) the sound sensor, (ii) the light sensor,and (iii) the proximity sensor comprises the light sensor and theproximity sensor, and wherein the sensor reading for the meetinglocation comprises each of a light sensor reading and a proximity sensorreading, and wherein the at least one threshold comprises each of alight threshold and a proximity threshold.
 10. The virtual co-locationdevice of claim 1, wherein the at least one of (i) the sound sensor,(ii) the light sensor, and (iii) the proximity sensor comprises each ofthe sound sensor, the light sensor, and the proximity sensor, andwherein the sensor reading for the meeting location comprises each of asound sensor reading, a light sensor reading, and a proximity sensorreading, and wherein the at least one threshold comprises each of asound threshold, a light threshold, and a proximity threshold.
 11. Thevirtual co-location device of claim 1, wherein the light sensorcomprises a photo diode.
 12. The virtual co-location device of claim 1,wherein the proximity sensor comprises at least one of a PIR sensor, anoptical sensor, a microwave sensor, an ultrasonic sensor, an acousticmotion sensor, an RFID reader, and an NFC reader.
 13. The virtualco-location device of claim 1, wherein the remote user device comprisesa first remote user device, the virtual hand raise signal comprises afirst virtual hand raise signal, the at least one of the visual and theaudio indication of the first virtual hand raise signal comprises afirst at least one of the visual and the audio indication of the firstvirtual hand raise signal, and wherein the logic instructions, whenexecuted by the processing device, further result in: receiving, by thetransceiver device, from a second remote user device and in response tothe updating of the state file, an indication of a second virtual handraise signal; and outputting, by the beacon and in response to thereceiving of the second virtual hand raise signal, a second at least oneof a visual and an audio indication of the second virtual hand raisesignal.
 14. The virtual co-location device of claim 13, wherein thefirst at least one of the visual and the audio indication of the firstvirtual hand raise signal comprises at least one of a first color and afirst sound, and wherein the second at least one of the visual and theaudio indication of the second virtual hand raise signal comprises atleast one of a second color and a second sound.